#include "stm32f10x.h"                  // Device header
#include "stm32f10x_gpio.h"
#include "Delay.h"

//#define RCCS_apb2 *((unsigned volatile int*) 0x40021018)
//#define gpioc_CRH *((unsigned volatile int*) 0x40011004)
//#define gpiox_ODR *((unsigned volatile int*) 0x4001100C)
//#define GPIOx_BSRR *((unsigned volatile int*) 0x40011010)

int main(void)
{
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
	GPIO_InitTypeDef GPIO_InitStructure;
	GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
	GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_0;
	GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
	GPIO_Init(GPIOA, &GPIO_InitStructure);
//	GPIO_SetBits(GPIOC, GPIO_Pin_13);
//	GPIO_ResetBits(GPIOC, GPIO_Pin_13);
//    RCCS_apb2 |= 1<<4;
//    gpioc_CRH &= ~(0xF << 20);
//    gpioc_CRH |= 0x00300000;
//    gpiox_ODR = 1<<13;
//    GPIOx_BSRR = 1<<13;
    uint16_t i = 00000001;
	while (1)
	{
        
		GPIO_Write(GPIOA,i);
        Delay_s(1);
        i = i<<1;
        
	}
}
